home *** CD-ROM | disk | FTP | other *** search
/ Macworld Expo - Develope…Central & Net Innovations / Developer Central and Net Innovators (MacWorld Expo) (January 1999).iso / Developer Central / Bowers Development / Demo AppMaker / Examples / Pascal OS8 / Everything / ModelessBars.p < prev    next >
Encoding:
Text File  |  1998-10-30  |  7.6 KB  |  270 lines  |  [TEXT/CWIE]

  1. { ModelessBars.p -- modeless dialog }
  2. { Created 10/30/98 1:06 PM by AppMaker }
  3.  
  4. Unit ModelessBars;
  5. Interface
  6.  
  7. Uses
  8.     Types,
  9.     Quickdraw,
  10.     Controls,
  11.     Dialogs,
  12.     Events,
  13.     Lists,
  14.     Menus,
  15.     TextEdit,
  16.     DModelessBarsData,
  17.     AMDialog;
  18.  
  19. Procedure ShowModelessBars;
  20.  
  21. type
  22.     CModelessBars        = object (AMDialog)
  23.  
  24.     {data members}
  25.         mData:        DModelessBarsData;
  26.  
  27.     mBarsHandle:        ControlHandle;
  28.     mStandardHandle:        ControlHandle;
  29.     mGraphicHandle:        ControlHandle;
  30.     mSliderHandle:        ControlHandle;
  31.     mTickMarksHandle:        ControlHandle;
  32.     mNonDirectionalHandle:        ControlHandle;
  33.     mLittleArrowsHandle:        ControlHandle;
  34.     mSpinnerHandle:        ControlHandle;
  35.     mVolumeControlHandle:        ControlHandle;
  36.     mJimSSliderHandle:        ControlHandle;
  37.     mStandard2Handle:        ControlHandle;
  38.     mIndeterminateHandle:        ControlHandle;
  39.     mChasingArrowsHandle:        ControlHandle;
  40.     mRectangleHandle:        ControlHandle;
  41.     mRoundRectHandle:        ControlHandle;
  42.     mBarberPoleHandle:        ControlHandle;
  43.     mRoundBarberHandle:        ControlHandle;
  44.  
  45.     {methods - public}
  46.         Procedure ConnectToData    (inData:    AMSignaler); Override;
  47.  
  48.     {methods - internal}
  49.         Procedure FinishMake; Override;
  50.         Procedure DoItem    (inItemHit:    SInt16); Override;
  51.         Procedure DataChanged    (inDataID:    longint); Override;
  52.  
  53.     end;
  54.  
  55. var
  56.     sModelessBarsPtr:        DialogPtr;
  57.  
  58. {----------}
  59. Implementation
  60.  
  61. Uses
  62.     ResourceDefs,
  63.     ControlUtils,
  64.     Miscellany;
  65.  
  66. const
  67.     kBarsPanel        = 1;
  68.     kScrollBarsLayer        = 2;
  69.     kStandardScroll        = 3;
  70.     kGraphicScroll        = 4;
  71.     kSliderScroll        = 5;
  72.     kTickMarksScroll        = 6;
  73.     kNonDirectionalScroll        = 7;
  74.     kLittleArrowsScroll        = 8;
  75.     kSpinnerScroll        = 9;
  76.     kVolumeControlScroll        = 10;
  77.     kJimSSliderScroll        = 11;
  78.     kProgressBarsLayer        = 12;
  79.     kStandard2Bar            = 13;
  80.     kIndeterminateBar            = 14;
  81.     kChasingArrowsBar            = 15;
  82.     kRectangleBar            = 16;
  83.     kRoundRectBar            = 17;
  84.     kBarberPoleBar            = 18;
  85.     kRoundBarberBar            = 19;
  86.  
  87.  
  88. {----------}
  89. Function NewModelessBars: CModelessBars;
  90. var
  91.     dialog:        CModelessBars;
  92. begin
  93.     dialog := nil;
  94.     New (dialog);
  95.  
  96.     if dialog <> nil then begin
  97.         dialog.Initialize;
  98.     end;
  99.     NewModelessBars := dialog;
  100. end;
  101.  
  102. {----------}
  103. Procedure CreateModelessBars;
  104. var
  105.     dialog:        CModelessBars;
  106.     data:        DModelessBarsData;
  107. begin
  108.     dialog := NewModelessBars;
  109.     data := NewDModelessBarsData;
  110.  
  111.     dialog.MakeDialog (DLOG_ModelessBars);
  112.     dialog.ConnectToData (data);
  113. end; {CreateModelessBars}
  114.  
  115. {----------}
  116. Procedure ShowModelessBars;
  117. begin
  118.     if sModelessBarsPtr = nil then begin
  119.         CreateModelessBars;
  120.     end;
  121.     if sModelessBarsPtr <> nil then begin
  122.         SelectWindow (sModelessBarsPtr);
  123.         ShowWindow (sModelessBarsPtr);
  124.     end;
  125. end; {ShowModelessBars}
  126.  
  127. {----------}
  128. Procedure CModelessBars.FinishMake;
  129. var
  130.     errCode:        OSErr;
  131. begin
  132.     sModelessBarsPtr := mDialog;
  133.  
  134.     mBarsHandle := GetControlItem (kBarsPanel);
  135.     mStandardHandle := GetControlItem (kStandardScroll);
  136.     mGraphicHandle := GetControlItem (kGraphicScroll);
  137.     mSliderHandle := GetControlItem (kSliderScroll);
  138.     mTickMarksHandle := GetControlItem (kTickMarksScroll);
  139.     mNonDirectionalHandle := GetControlItem (kNonDirectionalScroll);
  140.     mLittleArrowsHandle := GetControlItem (kLittleArrowsScroll);
  141.     mSpinnerHandle := GetControlItem (kSpinnerScroll);
  142.     mVolumeControlHandle := GetControlItem (kVolumeControlScroll);
  143.     mJimSSliderHandle := GetControlItem (kJimSSliderScroll);
  144.     mStandard2Handle := GetControlItem (kStandard2Bar);
  145.     mIndeterminateHandle := GetControlItem (kIndeterminateBar);
  146.     mChasingArrowsHandle := GetControlItem (kChasingArrowsBar);
  147.     mRectangleHandle := GetControlItem (kRectangleBar);
  148.     mRoundRectHandle := GetControlItem (kRoundRectBar);
  149.     mBarberPoleHandle := GetControlItem (kBarberPoleBar);
  150.     mRoundBarberHandle := GetControlItem (kRoundBarberBar);
  151. end;
  152.  
  153. {----------}
  154. Procedure CModelessBars.ConnectToData (
  155.     inData:        AMSignaler); Override;
  156. begin
  157.     inherited ConnectToData (inData);
  158.     mData := DModelessBarsData (inData);
  159.  
  160.     SetControlValue (mBarsHandle, mData.GetBars3);
  161.     SetLayerGroupValue (mBarsHandle, GetControlValue (mBarsHandle));
  162.     SetControlValue (mStandardHandle, mData.GetStandard8);
  163.     SetControlValue (mGraphicHandle, mData.GetGraphic6);
  164.     SetControlValue (mSliderHandle, mData.GetSlider3);
  165.     SetControlValue (mTickMarksHandle, mData.GetTickMarks3);
  166.     SetControlValue (mNonDirectionalHandle, mData.GetNonDirectional3);
  167.     SetControlValue (mLittleArrowsHandle, mData.GetLittleArrows3);
  168.     SetControlValue (mSpinnerHandle, mData.GetSpinner3);
  169.     SetControlValue (mVolumeControlHandle, mData.GetVolumeControl3);
  170.     SetControlValue (mJimSSliderHandle, mData.GetJimSSlider3);
  171.     SetControlValue (mStandard2Handle, mData.GetStandard9);
  172.     SetControlValue (mIndeterminateHandle, mData.GetIndeterminate3);
  173.     SetControlValue (mChasingArrowsHandle, mData.GetChasingArrows3);
  174.     SetControlValue (mRectangleHandle, mData.GetRectangle3);
  175.     SetControlValue (mRoundRectHandle, mData.GetRoundRect3);
  176.     SetControlValue (mBarberPoleHandle, mData.GetBarberPole3);
  177.     SetControlValue (mRoundBarberHandle, mData.GetRoundBarber3);
  178. end;
  179.  
  180. {----------}
  181. Procedure CModelessBars.DoItem (
  182.     inItemHit:        SInt16);
  183. begin
  184.     case inItemHit of
  185.     kBarsPanel: begin
  186.             mData.SetBars3 (GetControlValue (mBarsHandle));
  187.             SetLayerGroupValue (mBarsHandle, GetControlValue (mBarsHandle));
  188.         end;
  189.     kStandardScroll:
  190.             mData.SetStandard8 (GetControlValue (mStandardHandle));
  191.     kGraphicScroll:
  192.             mData.SetGraphic6 (GetControlValue (mGraphicHandle));
  193.     kSliderScroll:
  194.             mData.SetSlider3 (GetControlValue (mSliderHandle));
  195.     kTickMarksScroll:
  196.             mData.SetTickMarks3 (GetControlValue (mTickMarksHandle));
  197.     kNonDirectionalScroll:
  198.             mData.SetNonDirectional3 (GetControlValue (mNonDirectionalHandle));
  199.     kLittleArrowsScroll:
  200.             mData.SetLittleArrows3 (GetControlValue (mLittleArrowsHandle));
  201.     kSpinnerScroll:
  202.             mData.SetSpinner3 (GetControlValue (mSpinnerHandle));
  203.     kVolumeControlScroll:
  204.             mData.SetVolumeControl3 (GetControlValue (mVolumeControlHandle));
  205.     kJimSSliderScroll:
  206.             mData.SetJimSSlider3 (GetControlValue (mJimSSliderHandle));
  207.  
  208.     end; {switch}
  209. end;
  210.  
  211. {----------}
  212. Procedure CModelessBars.DataChanged (
  213.     inDataID:        longint); Override;
  214. begin
  215.     if inDataID = idBars3 then begin
  216.         SetControlValue (mBarsHandle, mData.GetBars3);
  217.         SetLayerGroupValue (mBarsHandle, mData.GetBars3);
  218.     end;
  219.     if inDataID = idStandard8 then begin
  220.         SetControlValue (mStandardHandle, mData.GetStandard8);
  221.     end;
  222.     if inDataID = idGraphic6 then begin
  223.         SetControlValue (mGraphicHandle, mData.GetGraphic6);
  224.     end;
  225.     if inDataID = idSlider3 then begin
  226.         SetControlValue (mSliderHandle, mData.GetSlider3);
  227.     end;
  228.     if inDataID = idTickMarks3 then begin
  229.         SetControlValue (mTickMarksHandle, mData.GetTickMarks3);
  230.     end;
  231.     if inDataID = idNonDirectional3 then begin
  232.         SetControlValue (mNonDirectionalHandle, mData.GetNonDirectional3);
  233.     end;
  234.     if inDataID = idLittleArrows3 then begin
  235.         SetControlValue (mLittleArrowsHandle, mData.GetLittleArrows3);
  236.     end;
  237.     if inDataID = idSpinner3 then begin
  238.         SetControlValue (mSpinnerHandle, mData.GetSpinner3);
  239.     end;
  240.     if inDataID = idVolumeControl3 then begin
  241.         SetControlValue (mVolumeControlHandle, mData.GetVolumeControl3);
  242.     end;
  243.     if inDataID = idJimSSlider3 then begin
  244.         SetControlValue (mJimSSliderHandle, mData.GetJimSSlider3);
  245.     end;
  246.     if inDataID = idStandard9 then begin
  247.         SetControlValue (mStandard2Handle, mData.GetStandard9);
  248.     end;
  249.     if inDataID = idIndeterminate3 then begin
  250.         SetControlValue (mIndeterminateHandle, mData.GetIndeterminate3);
  251.     end;
  252.     if inDataID = idChasingArrows3 then begin
  253.         SetControlValue (mChasingArrowsHandle, mData.GetChasingArrows3);
  254.     end;
  255.     if inDataID = idRectangle3 then begin
  256.         SetControlValue (mRectangleHandle, mData.GetRectangle3);
  257.     end;
  258.     if inDataID = idRoundRect3 then begin
  259.         SetControlValue (mRoundRectHandle, mData.GetRoundRect3);
  260.     end;
  261.     if inDataID = idBarberPole3 then begin
  262.         SetControlValue (mBarberPoleHandle, mData.GetBarberPole3);
  263.     end;
  264.     if inDataID = idRoundBarber3 then begin
  265.         SetControlValue (mRoundBarberHandle, mData.GetRoundBarber3);
  266.     end;
  267. end;
  268.  
  269. End.
  270.